<!DOCTYPE html>
<html lang="eng">
<head>
<title>Http Man Page</title>
</head>
<BODY><PRE>
HTTP(1)                          User Commands                         HTTP(1)

<B>NAME</B>
       http - HTTP Client program

<B>SYNOPSIS</B>
       <B>http</B>
           <B>--auth basic|digest</B>
           <B>--benchmark</B>
           <B>--cert file</B>
           <B>--chunk size</B>
           <B>--continue</B>
           <B>--cookie cookieString</B>
           <B>--data</B>
           <B>--debugger</B>
           <B>--delete</B>
           <B>--form string</B>
           <B>--header 'key: value'</B>
           <B>--host hostName</B>
           <B>--iterations count</B>
           <B>--key file</B>
           <B>--log logSpec</B>
           <B>--method METHOD</B>
           <B>--nofollow</B>
           <B>--noout</B>
           <B>--out file</B>
           <B>--password pass</B>
           <B>--post</B>
           <B>--printable</B>
           <B>--protocol version</B>
           <B>--provider name</B>
           <B>--put</B>
           <B>--range byteRanges</B>
           <B>--retries count</B>
           <B>--sequence</B>
           <B>--showHeaders</B>
           <B>--showStatus</B>
           <B>--single</B>
           <B>--threads count</B>
           <B>--timeout seconds</B>
           <B>--upload</B>
           <B>--user name</B>
           <B>--verify</B>
           <B>--verbose</B>
           <B>--workers count</B>
           <B>--zero</B>
           <B>[files] url</B>

<B>DESCRIPTION</B>
       The  http  command  issues  HTTP  commands to retrieve files from a web
       server. If "files" are provided on the command line these are  included
       in the request body data.

<B>OPTIONS</B>
       <B>--auth basic|digest</B>
              Set the type of authentication to use. Defaults to basic.

       <B>--benchmark</B>
              Output timing results after retrieving URLs.

       <B>--cert file</B>
              Certificate  to  send  to the server to identify the client.  If
              using --cert, you will need to use --key to specify the  private
              key file.

       <B>--cacert bundle</B>
              Certificate  bundle  to  use when validating the server certifi-
              cate.

       <B>--chunk size</B>
              Request that web  server  use  use  transfer  encoding  for  the
              response  and  break  the  response  data  into  chunks  of  the
              requested size. This is an custom header and will be ignored  by
              other web servers.

       <B>--continue</B>
              Continue on errors. Default is to stop on the first error.

       <B>--cookie cookieString</B>
              Define  a  cookie string to send with the request. Multiple uses
              okay.

       <B>--debugger</B>
              Run in debug mode and disable all timeouts. Useful when  running
              a  server in the debugger to prevent the client from retrying or
              killing the request.

       <B>--data </B>String of raw body data to send with the request.

       <B>--delete</B>
              Issue a DELETE request. This is an alias for --method DELETE.

       <B>--form formData</B>
              String of body data to send with the request. Assumed to be  URL
              encoded. ie. "name=paul&amp;address=uk".  You cannot use this switch
              with either the --datafile or --form switches.

       <B>--header "key: value"</B>
              Add a custom header to send with the request. Multiple  --header
              switches can be supplied.

       <B>--host name</B>
              Prepend  all  URLs  with  the specified host. For example if '-h
              www.myHost.com:8888" were used with the URL "/", then http  will
              retrieve http://www.myHost.com:8888.

       <B>--iterations count</B>
              Retrieve  the  URLs  iterations  times. Useful for load testing.
              This switch can also be abbreviated as <B>-i</B>.

       <B>--key file</B>
              Private key file to use with the certificate file specified  via
              --cert.

       <B>--log logSpec</B>
              Specify  a  file  to  log  messages.  The syntax is: <B>"--log log-</B>
              <B>File[:logLevel]"</B>.  Level 3 will trace the request  and  response
              headers.

       <B>--method method</B>
              Set  the  HTTP  method.  Values  may be "GET", "PUT", "OPTIONS",
              "TRACE".

       <B>--nofollow</B>
              Don't automatically follow redirects.  Normal  behaviour  is  to
              follow  redirects and reissue the request if the server responds
              with a redirection response (30X response).

       <B>--noout</B>
              Run in quiet mode and do no output. Suppress  tracing  requests.
              This switch can also be abbreviated as <B>-n </B>or as <B>--quiet </B>or <B>-q</B>.

       <B>--out file</B>
              Save response output to the given file.

       <B>--password passPhrase</B>
              Specify  a  password  to  send with the request. Requires a user
              name to be also specified via --user.

       <B>--post </B>Issue a POST request. This is an alias for --method POST.

       <B>--printable</B>
              Make binary output printable by printing  hex  digits  for  each
              character.

       <B>--protocol HTTP_VERSION</B>
              Use  the  specified  HTTP protocol. httpVersion should be either
              '0' for HTTP/1.0 or 1 for HTTP/1.1.

       <B>--provider est|openssl</B>
              Select the SSL stack provider.

       <B>--put  </B>Issue a PUT request. This is an alias for --method PUT.

       <B>--range byteRange</B>
              Request that only the specified byte range of data  be  returned
              with  the  response.  This  will  add  a  "Range"  header to the
              request.  The range format   is:   Range:  bytes=n1-n2,n3-n4,...
              where  n1  is  first byte position and n2 is last byte position.
              Multiple --range switches can be supplied.  Examples:

              0-49             first 50 bytes
              50-99,200-249    Two 50 byte ranges from 50 and 200
              -50              Last 50 bytes
              1-               Skip first byte then emit the rest

       <B>--retries retryCount</B>
              Retry failed requests this number of times.

       <B>--showHeaders</B>
              Output HTTP headers to stdout. Useful for debugging.

       <B>--showStatus</B>
              Output the HTTP response code to  stdout.   If  this  switch  is
              used, the command will always exit with zero status.

       <B>--single</B>
              Single  step  between  requests by pausing for user input before
              proceeding.

       <B>--threads loadThreads</B>
              Number of threads to use. Each URL  will  be  retrieved  by  all
              threads. Useful only for load testing.

       <B>--timeout seconds</B>
              Specifies a timeout to use for each request in seconds.

       <B>--upload</B>
              Issue  a POST request with multipart mime encoding for the files
              specified on the command line. This is  an  alias  for  --method
              POST with files on the command line.

       <B>--user user</B>
              Specify  a  user name to send with the request. If a password is
              not specified via --password, the  program  will  prompt  for  a
              password  (which  will not be echoed). The username and password
              will be sent with the request according  to  the  authentication
              protocol required by the requested web server and requested doc-
              ument.

       <B>--verify</B>
              Verify the server presented certificate  when  using  SSL.  This
              will  verify  the certificate has not expired, is validly issued
              and that the certificate common name  corresponds  to  the  host
              name.

       <B>--verbose</B>
              Verbose  mode. Trace activity to stdout. Can by specified multi-
              ple times for more verbose tracing.  This  switch  can  also  be
              abbreviated as <B>-v</B>.

       <B>--workers count</B>
              Specify the number of worker threads to use. Worker threads tem-
              porarily assigned to process callbacks.

       <B>--zero </B>Exit with a zero status for any valid  HTTP  response.  Normally
              returns a non-zero status if the HTTP response code is not a 2XX
              or 3XX series response code.

<B>REPORTING BUGS</B>
       Report bugs to dev@embedthis.com.

<B>COPYRIGHT</B>
       Copyright (C) Embedthis Software.

http                               July 2014                           HTTP(1)
</PRE></BODY>
</html>